草庐IT

Python UTF-16 CSV 阅读器

全部标签

c# - 如何一次读取一个 csv 文件并替换/编辑某些行?

我有一个60GB的csv文件,需要对其进行一些修改。客户想要对文件数据进行一些更改,但我不想重新生成该文件中的数据,因为这需要4天的时间。我怎样才能逐行读取文件(而不是将其全部加载到内存中!),然后对这些行进行编辑,替换某些值等? 最佳答案 这个过程大概是这样的:打开一个StreamWriter到一个临时文件。打开目标文件的StreamReader。对于每一行:根据分隔符将文本分成几列。检查要替换的值的列,然后替换它们。使用分隔符将列值重新连接在一起。将行写入临时文件。完成后,删除目标文件,并将临时文件移动到目标文件路径。关于第2步

c# - 如何将 xml 作为 UTF-8 而不是 UTF-16 返回

我正在使用序列化的例程。它可以工作,但是当下载到浏览器时,我看到一个空白页面。我可以查看页面源代码或在文本编辑器中打开下载,我看到了xml,但它是UTF-16,我认为这就是浏览器页面显示空白的原因?如何修改我的序列化程序例程以返回UTF-8而不是UTF-16?返回的XML源:JanuaryFebruaryMarchAprilMayJuneJulyAugustSeptemberOctoberNovemberDecember调用序列化程序的示例:DateTimeFormatInfodateTimeFormatInfo=newDateTimeFormatInfo();varmonths=da

c# - 将 CSV 文件转换为 XML

我需要将CSV文件转换为XML文件。到目前为止,我看到的示例都展示了如何使用CSV中固定数量的列来执行此操作。到目前为止,我有这个,使用LINQ:String[]File=File.ReadAllLines(@"C:\text.csv");Stringxml="";XElementtop=newXElement("TopElement",fromitemsinFileletfields=items.Split(';')selectnewXElement("Item",newXElement("Column1",fields[0]),newXElement("Column2",field

c# - UTF-8 或 UTF-16 或 UTF-32 或 UCS-2

我正在设计一个新的CMS,但想要设计它来满足我future的所有需求,比如多语言内容,所以我认为Unicode(UTF-8)是最好的解决方案但是通过一些搜索我得到了这篇文章http://msdn.microsoft.com/en-us/library/bb330962%28SQL.90%29.aspx#intlftrql2005_topic2所以我现在很困惑现在使用什么UTF-8/UTF-16/UTF-32/UCS-2这对多语言内容和性能等更好。PS:我正在使用Asp.net和c#以及SqlServer2005提前致谢 最佳答案 这

c# - 使用 FileHelpers 导入 CSV 文件

我正在使用FileHelpers库将csv文件导入数据库表。我在导入文件标题中包含以数字('800NUMBER')开头的字段的文件时遇到问题。要导入的代码:DataTabledata=CommonEngine.CsvToDataTable(file,',');异常:FileHelpers.FileHelpersException:字符串“800NUMBER”不是有效的.NET标识符。在FileHelpers.RunTime.FieldBuilder..ctor(StringfieldName,StringfieldType)在FileHelpers.RunTime.DelimitedC

c# - 如何强制 ADO.Net 在阅读器 TableSchema 中仅使用 System.String 数据类型

我正在使用OleDbConnection查询Excel2007电子表格。我想强制OleDbDataReader仅使用字符串作为列数据类型。系统正在查看前8行数据并将数据类型推断为Double。问题是,在第9行,我在该列中有一个字符串,并且OleDbDataReader正在返回Null值,因为它无法转换为Double。我使用了这些连接字符串:Provider=Microsoft.ACE.OLEDB.12.0;DataSource="ExcelFile.xlsx";PersistSecurityInfo=False;ExtendedProperties="Excel12.0;IMEX=1;

c# - 跟踪流阅读器的行的位置

我需要跟踪我从流阅读器读取的行的位置。当我说reader.ReadLine()时,我需要知道该行在文件中的位置,并且我还希望能够从我之前跟踪的位置读取文件。这可能吗? 最佳答案 您可以通过以下三种方式之一执行此操作:1)编写自己的StreamReader。这是一个很好的起点:Howtoknowposition(linenumber)ofastreamreaderinatextfile?2)StreamReader类有两个非常重要但私有(private)的变量,称为charPos和charLen,它们是定位实际“读取”位置所必需的,而

c# - 如何使用 C# 处理 CSV 文件中的换行符?

我有一个Excel电子表格正在用C#转换为CSV文件,但在处理换行符时遇到问题。例如:"John","23","555-5555""Peter","24","555-5555""Mary,"21","555-5555"当我读取CSV文件时,如果记录不是以双引号(")开头,则会错误地出现一个换行符,我必须将其删除。我有一些来自互联网的CSV阅读器类,但我担心他们会在换行符上失败。我应该如何处理这些换行符?非常感谢大家的帮助。这是我到目前为止所做的。我的记录格式固定,都是以开头JTW;...;....;...;JTW;...;...;....JTW;....;...;....;...;..

c# - IEnumerable<T> 到 CSV 文件

我正在从LINQ查询中获取类型为IEnumerable的var的结果我想根据LINQ的结果创建一个CSV文件我从下面的查询中得到结果varr=fromtableinmyDataTable.AsEnumerable()orderbytable.Field(para1)grouptablebynew{Name=table[para1],Y=table[para2]}intoResultTableselectnew{Name=ResultTable.Key,Count=ResultTable.Count()}; 最佳答案 检查这个publ

c# - 将 .csv 文件解析为二维数组

我正在尝试将CSV文件解析为C#中的二维数组。我有一个非常奇怪的问题,这是我的代码:stringfilePath=@"C:\Users\Matt\Desktop\EveSpreadSheet\Auto-Manufacture.csv";StreamReadersr=newStreamReader(filePath);data=null;intRow=0;while(!sr.EndOfStream){string[]Line=sr.ReadLine().Split(',');if(Row==0){data=newstring[Line.Length,Line.Length];}for(i